global ColoSchemes {
    in-out property <bool> dark-scheme;
    
    public function SwitchSchemes() {
        dark-scheme = !dark-scheme;
    }
}

global Palette {
    in-out property<bool> dark-color-scheme: ColoSchemes.dark-scheme;

    out property <brush> background: !root.dark-color-scheme ? #f8f3f9 : #2a282d;
    out property <brush> surface: !root.dark-color-scheme ? #FFFBFE : #1C1B1F;
    out property <brush> surface-variant: !root.dark-color-scheme ? #E7E0EC.darker(0.2) : #49454F;
    out property <brush> on-surface: !root.dark-color-scheme ? #1C1B1F : #E6E1E5;
    out property <brush> on-surface-variant: !root.dark-color-scheme ? #49454E : #CAC4D0;
    out property <brush> surface-tint: !root.dark-color-scheme ? #6750A4 : #D0BCFF;
    out property <brush> primary: !root.dark-color-scheme ? #6750A4 : #D0BCFF;
    out property <brush> primary-container: !root.dark-color-scheme ? #4F378B : #4F378B;
    out property <brush> primary-ripple: !root.dark-color-scheme ? #D0BCFF : #6750A4;
    out property <brush> on-primary: !root.dark-color-scheme ? #FFFFFF : #371E73;
    out property <brush> shadow: #000000;
    out property <brush> outline: !root.dark-color-scheme ? #79747E : #938F99;
    out property <brush> outline-variant: !root.dark-color-scheme ? #C4C7C5 : #444746;
    out property <brush> secondary-container:  !root.dark-color-scheme ? #E8DEF8 : #4A4458;
    out property <brush> on-secondary-container:  !root.dark-color-scheme ? #1E192B : #E8DEF8;
    out property <brush> secondary-ripple: !root.dark-color-scheme ? #fffc : #000000;
}

export { ColoSchemes, Palette }